<!DOCTYPE html>
<html lang="zh-CN">
<head>
	    <meta http-equiv="X-UA-Compatible" content="IE=9;IE=8;IE=7" />
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>code123 - 程序员上网导航</title>
    <meta name="keywords" content="大数据,hbase,Kafka,Redis,MongoDB,Spark教程,Storm教程,Python教程,Hadoop教程,Hive教程,Java教程,MySQL,PHP,Linux命令,Tornado,Bootstrap,jquery,Javascript,c/c++,Android开发,iOS开发,html5开发,微信开发,数据结构/算法,面试/求职" />
    <meta name="description" content="专注打造一站式IT学习体验。聚合基础学习教程、高质量技术博客、经验分享、业界趋势、面试求职等资源，分享技术与快乐!" />
    <meta name="viewport" content="initial-scale=1.0,user-scalable=no">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit|ie-comp|ie-stand">
    <link rel="Shortcut Icon" href="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2015/08/favicon.ico" type="image/x-icon" />
    <link rel="alternate" type="application/rss+xml" title="code123 &raquo; Feed" href="http://www.code123.cc/feed" />
    <link rel="alternate" type="application/rss+xml" title="code123 &raquo; 评论Feed" href="http://www.code123.cc/comments/feed" />
		<script type="text/javascript">
			window._wpemojiSettings = {"baseUrl":"http:\/\/s.w.org\/images\/core\/emoji\/72x72\/","ext":".png","source":{"concatemoji":"http:\/\/www.code123.cc\/wp-includes\/js\/wp-emoji-release.min.js?ver=1462685583"}};
			!function(a,b,c){function d(a){var c=b.createElement("canvas"),d=c.getContext&&c.getContext("2d");return d&&d.fillText?(d.textBaseline="top",d.font="600 32px Arial","flag"===a?(d.fillText(String.fromCharCode(55356,56812,55356,56807),0,0),c.toDataURL().length>3e3):(d.fillText(String.fromCharCode(55357,56835),0,0),0!==d.getImageData(16,16,1,1).data[0])):!1}function e(a){var c=b.createElement("script");c.src=a,c.type="text/javascript",b.getElementsByTagName("head")[0].appendChild(c)}var f,g;c.supports={simple:d("simple"),flag:d("flag")},c.DOMReady=!1,c.readyCallback=function(){c.DOMReady=!0},c.supports.simple&&c.supports.flag||(g=function(){c.readyCallback()},b.addEventListener?(b.addEventListener("DOMContentLoaded",g,!1),a.addEventListener("load",g,!1)):(a.attachEvent("onload",g),b.attachEvent("onreadystatechange",function(){"complete"===b.readyState&&c.readyCallback()})),f=c.source||{},f.concatemoji?e(f.concatemoji):f.wpemoji&&f.twemoji&&(e(f.twemoji),e(f.wpemoji)))}(window,document,window._wpemojiSettings);
		</script>
		<style type="text/css">
img.wp-smiley,
img.emoji {
	display: inline !important;
	border: none !important;
	box-shadow: none !important;
	height: 1em !important;
	width: 1em !important;
	margin: 0 .07em !important;
	vertical-align: -0.1em !important;
	background: none !important;
	padding: 0 !important;
}
</style>
<link rel='stylesheet' id='dwqa-style-css'  href='css/style.css?ver=1462685583' type='text/css' media='all' />

<style type="text/css">
	.wp-zan{
		color: !important
	}
	.wp-zan:hover{
		color: !important
	}
	.wp-zan.zaned{
		color: !important
	}
</style>
	    </head>
<body class="home blog">
<header id="header">
	<div class="center">
        <a class="logo" href="index.html" alt="code123">
            <img src="image/logo3.png" alt="code123" />
        </a>
		<nav id="topnav" class="menu-menu1-container">
            <ul id="menu-menu1" class="menu">
                <li id="menu-item-1454" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home menu-item-1454"><a href="index.html">首页</a></li>
                <li id="menu-item-269" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-269"><a href="trends.html">业界</a></li>
                <li id="menu-item-1600" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1600"><a href="startup.html">创业</a></li>
                <li id="menu-item-1450" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1450"><a href="interview-carrier.html">面试</a></li>
                <li id="menu-item-1451" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1451"><a href="java.html">Java</a></li>
                <li id="menu-item-1452" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1452"><a href="python.html">Python</a></li>
            </ul>
        </nav>
        <div class="search right">
            <form class="search-form clearfix" method="get" action="index.html/">
                <input class="search-submit" type="submit" />
                <input class="search-text" name="s" type="text" placeholder="Search..." />
            </form>
        </div>
	</div>
</header>

<div id="slider">
    <div class="center clearfix">
        <div class="slider-left">
            <div class="slider-thumbnail">
                <img src='http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/elasticsearch-rest.jpg?imageView/1/w/500/h/300/q/100' alt='Elasticsearch 架构以及源码概览' width='500' height='300' />                                 </div>
            <div class="slider-thumbnail">
                <img src='http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/concurrent.jpg?imageView/1/w/500/h/300/q/100' alt='设计高并发下的读服务？一个电商老兵的10条经验' width='500' height='300' />
            </div>
            <div class="slider-thumbnail">
                <img src='http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/04/java-top100.png?imageView/1/w/500/h/300/q/100' alt='Java最佳实践' width='500' height='300' />
            </div>
            <div class="slider-thumbnail">
                <img src='http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/04/java-top100.png?imageView/1/w/500/h/300/q/100' alt='Java Top 100热门问答(Stackoverflow)' width='500' height='300' />                             </div>
        </div>
        <div class="slider-right">
            <div class="slider-content">
                <h1><a href="index.html/2582.html">Elasticsearch 架构以及源码概览</a></h1>
                <div class="slidertext">
                    <p>Elasticsearch 是最近两年异军突起的一个兼有搜索引擎和NoSQL数据库功能的开源系统，基于Java/Lucene构建。最近研究了一下，感觉 Elasticsearch 的架构以及其开源的生态构建都有许多可借鉴之处，所以整理成文章分享下。本文的代码以及架构分析主要基于 Elasticsearch 2.X 最新稳定版。
Elasticsearch 看名字就能大概了解……</p>
                </div>
                <div class="sliderfooter">
                    <a href="http://www.code123.cc/2582.html" class="sliderlink">阅读全部</a>
                </div>
            </div>
            <div class="slider-content">
                <h1><a href="http://www.code123.cc/2572.html">设计高并发下的读服务？一个电商老兵的10条经验</a></h1>
                <div class="slidertext">
                    <p>本文作者是一个一线的电商老兵，任职于京东商城。在本文中，他将会分享他在构建以读为主的系统时总结的经验和教训，内容包括使用HTTP协议对外通讯、使用短连接、数据异构、巧用缓存、流量控制、防刷、降级、多域名等，作者老马不带遮掩的，把自己总结的经验，包括代码都放到这里了，欢迎各位检阅！
几乎所有的互联网系统……</p>
                </div>
                <div class="sliderfooter">
                    <a href="http://www.code123.cc/2572.html" class="sliderlink">阅读全部</a>
                </div>
            </div>
            <div class="slider-content">
                <h1><a href="http://www.code123.cc/2495.html">Java最佳实践</a></h1>
                <div class="slidertext">
                    <p>Java 是在世界各地最流行的编程语言之一, 但是看起来没人喜欢使用它。而 Java 事实上还算是一门不错的语言，随着 Java 8 最近的问世，我决定编制一个库，实践和工具的清单，汇集 Java 的一些最佳实践。
                    本文被放到了 Github 上。你可以随意地提交贡献，并加入自己的有关 Java 方面的建议和最佳实践。
                    本文概览：
                    风格
                    ……</p>
                </div>
                <div class="sliderfooter">
                <a href="http://www.code123.cc/2495.html" class="sliderlink">阅读全部</a>
                </div>
            </div>
            <div class="slider-content">
                <h1><a href="http://www.code123.cc/2492.html">Java Top 100热门问答(Stackoverflow)</a></h1>
                <div class="slidertext">
                <p>目录
                基础语法
                Java += 操作符实质
                将InputStream转换为String
                将数组转换为List
                如何遍历map对象
                public，protected，private，不加修饰符。有什么区别呢？
                如何测试一个数组是否包含指定的值？
                重写（Override）equlas和hashCode方法时应考虑的问题
                从一个多层嵌套循环中直接跳出
                如何将String转换为Int
                如何分割（s…
                </p>
            </div>
            <div class="sliderfooter">
            <a href="http://www.code123.cc/2492.html" class="sliderlink">阅读全部</a>
            </div>
            </div>
                                        </div>
                <div class="slider-dots">
                    <a href="javascript:;">1</a><a href="javascript:;">2</a><a href="javascript:;">3</a><a href="javascript:;">4</a>                </div>  
                <a href="javascript:;" class="slider-nav slider-prev"></a>
                <a href="javascript:;" class="slider-nav slider-next"></a>
            </div>
</div>
        <div id="content">
        <div class="main">
            <div class="center">
                    <ul id="indexcat" class="clearfix">
                        <!--li>分类目录：</li-->
                        <li><a href="http://www.code123.cc" data-hover='所有'  class="current"  >所有</a></li>
                        <li><a href="http://www.code123.cc/category/android" data-hover='Android'>Android</a></li>
                        <li><a href="http://www.code123.cc/category/django" data-hover='Django'>Django</a></li>
                        <li><a href="http://www.code123.cc/category/http" data-hover='HTTP'>HTTP</a></li>
                        <li><a href="http://www.code123.cc/category/ios" data-hover='iOS'>iOS</a></li>
                        <li><a href="http://www.code123.cc/category/it-carrier" data-hover='IT职场'>IT职场</a></li>
                        <li><a href="http://www.code123.cc/category/java" data-hover='Java'>Java</a></li>
                        <li><a href="http://www.code123.cc/category/javascript" data-hover='JavaScript'>JavaScript</a></li>
                        <li><a href="http://www.code123.cc/category/java-level02" data-hover='Java进阶'>Java进阶</a></li>
                        <li><a href="http://www.code123.cc/category/leetcode" data-hover='LeetCode'>LeetCode</a></li>
                        <li><a href="http://www.code123.cc/category/linux" data-hover='Linux'>Linux</a></li>
                        <li><a href="http://www.code123.cc/category/mysql" data-hover='MySQL'>MySQL</a></li>
                        <li><a href="http://www.code123.cc/category/php" data-hover='PHP'>PHP</a></li>
                        <li><a href="http://www.code123.cc/category/python" data-hover='Python'>Python</a></li>
                        <li><a href="http://www.code123.cc/category/redis" data-hover='Redis'>Redis</a></li>
                        <li><a href="http://www.code123.cc/category/ruby" data-hover='Ruby'>Ruby</a></li>
                        <li><a href="http://www.code123.cc/category/tutor-scalar" data-hover='Scala教程'>Scala教程</a></li><li><a href="http://www.code123.cc/category/spark" data-hover='Spark'>Spark</a></li>
                        <li><a href="http://www.code123.cc/category/tcp-ip" data-hover='TCP/IP协议'>TCP/IP协议</a></li>
                        <li><a href="http://www.code123.cc/category/web-dev" data-hover='Web开发'>Web开发</a></li>
                        <li><a href="http://www.code123.cc/category/wiki" data-hover='wiki'>wiki</a></li>
                        <li><a href="http://www.code123.cc/category/trends" data-hover='业界/资讯'>业界/资讯</a></li>
                        <li><a href="http://www.code123.cc/category/people" data-hover='人物'>人物</a></li>
                        <li><a href="http://www.code123.cc/category/startup" data-hover='创业'>创业</a></li><li><a href="http://www.code123.cc/category/bigdata" data-hover='大数据'>大数据</a></li>
                        <li><a href="http://www.code123.cc/category/math-programming" data-hover='学点数学'>学点数学</a></li><li><a href="http://www.code123.cc/category/tools" data-hover='实用工具'>实用工具</a></li>
                        <li><a href="http://www.code123.cc/category/funny" data-hover='有趣'>有趣</a></li>
                        <li><a href="http://www.code123.cc/category/architecture" data-hover='架构设计'>架构设计</a></li>
                        <li><a href="http://www.code123.cc/category/games-dev" data-hover='游戏开发'>游戏开发</a></li><li><a href="http://www.code123.cc/category/interview-carrier" data-hover='程序员面试'>程序员面试</a></li>
                        <li><a href="http://www.code123.cc/category/algorithm-datastruct" data-hover='算法/数据结构'>算法/数据结构</a></li>
                        <li><a href="http://www.code123.cc/category/experience" data-hover='经验分享'>经验分享</a></li>
                        <li><a href="http://www.code123.cc/category/network-program" data-hover='网络编程'>网络编程</a></li>
                        <li><a href="http://www.code123.cc/category/computer-inside" data-hover='计算机原理'>计算机原理</a></li><li><a href="http://www.code123.cc/category/design" data-hover='设计'>设计</a></li>
                        <li><a href="http://www.code123.cc/category/design-mode" data-hover='设计模式'>设计模式</a></li>                    </ul>
                                <ul class="grid effect-2 articles clearfix" id="grid">
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2671.html" rel="bookmark" title="创业者应该知道的SAAS服务"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/03/leijun.png?imageView/1/w/320/h/200/q/100" alt="创业者应该知道的SAAS服务" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2671.html" rel="bookmark" title="创业者应该知道的SAAS服务">
                创业者应该知道的SAAS服务            </a>
        </h2>
        <div class="post-content">
            创业成立之初，无论从系统建设到企业办公，还是人力、财务服务等，都需要使用各种服务，尽管目前有各种平台提供快速开办企业服务，但在企……        </div>
    </div>
    </li>
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2659.html" rel="bookmark" title="Redis和Memcached的区别"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/12a56f412c327e35a7cfdef3ce7a5330.jpg?imageView/1/w/320/h/200/q/100" alt="Redis和Memcached的区别" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2659.html" rel="bookmark" title="Redis和Memcached的区别">
                Redis和Memcached的区别            </a>
        </h2>
        <div class="post-content">
            Redis的作者Salvatore Sanfilippo曾经对这两种基于内存的数据存储系统进行过比较：

Redis支持服务器端的数据操作：Redis相比Memcached来……        </div>
    </div>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2657.html" rel="bookmark" title="Python性能优化的20条建议">
                Python性能优化的20条建议            </a>
        </h2>
        <div class="post-content">
            1、优化算法时间复杂度
算法的时间复杂度对程序的执行效率影响最大，在Python中可以通过选择合适的数据结构来优化时间复杂度，如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式，总得来说，一般有分治，分支界限，贪心，动态规划等思想。
2、减少冗余数据
如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。
3、合理使用copy与deepcopy
对于dict和list等数据结构的对象，直接赋值使用的是引用的方式。而有些情况下需要复制整个对象，这时可以使用copy包里……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2657" class="wp-zan" onclick="wpzan(2657, 0)" href="javascript:;"><span>8</span></a></div></li>
            <li><div class="postview">679</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2657.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2655.html" rel="bookmark" title="开源数据库的现状：方案、设计思想及适用场景">
                开源数据库的现状：方案、设计思想及适用场景            </a>
        </h2>
        <div class="post-content">
            



开源RDBMS与互联网的崛起很长时间以来，关系型数据库一直是大公司的专利，市场被 Oracle / DB2 等企业数据库牢牢把持。但是随着互联网的崛起、开源社区的发展，上世纪九十年代 MySQL 1.0 的发布，标志着关系型数据库的领域社区终于有可选择的方案。




MySQL
第一个介绍的单机 RDBMS 就是 MySQL。相信大多数朋友都已经对 MySQL 非常熟悉，基本上 MySQL 的成长史就是互联网的成长史。我接触的第一个 MySQL 版本是 MySQL 4.0，到后来的 MySQL 5.5 更是经典——基本所有的互联网公司都在使用。MySQL 也普及了「可插拔」引擎这一概念，针……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2655" class="wp-zan" onclick="wpzan(2655, 0)" href="javascript:;"><span>5</span></a></div></li>
            <li><div class="postview">247</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2655.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2651.html" rel="bookmark" title="消息队列设计精要">
                消息队列设计精要            </a>
        </h2>
        <div class="post-content">
            消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能，成为异步RPC的主要手段之一。
当今市面上有很多主流的消息中间件，如老牌的ActiveMQ、RabbitMQ，炙手可热的Kafka，阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。
本文不会一一介绍这些消息队列的所有特性，而是探讨一下自主开发设计一个消息队列时，你需要思考和设计的重要方面。过程中我们会参考这些成熟消息队列的很多重要思想。
本文首先会阐述什么时候你需要一个消息队列，然后以Push模型为主，从零开始分析……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2651" class="wp-zan" onclick="wpzan(2651, 0)" href="javascript:;"><span>5</span></a></div></li>
            <li><div class="postview">375</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2651.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2648.html" rel="bookmark" title="Shell脚本编程总结及速查手册">
                Shell脚本编程总结及速查手册            </a>
        </h2>
        <div class="post-content">
            Shell是一种编程语言, 它像其它编程语言如: C, Java, Python等一样也有变量/函数/运算符/if语句/循环控制/… 但在开始之前, 我想先理清Shell语言与Shell之间的关系.
Shell与Shell语言
上面说了Shell是一种编程语言但你可能也听说过:sh/bash/csh/zsh/…它们也叫Shell, 实际上这里所说的Shell是一种应用程序, 它负责解释执行你编写的Shell脚本, Mac默认就自带了sh/bash/csh/zsh/tcsh/ksh, 你可以这样查看cat /etc/shells
不同的shell的用法基本相同, 但有些shell提供了一些新特性, 比如我现在在用的就是zsh, 更多zsh的内容可以去看这篇文章
……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2648" class="wp-zan" onclick="wpzan(2648, 0)" href="javascript:;"><span>3</span></a></div></li>
            <li><div class="postview">625</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2648.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2645.html" rel="bookmark" title="Redis 指南">
                Redis 指南            </a>
        </h2>
        <div class="post-content">
            Redis 是 C 实现的基于内存并可持久的键值对数据库，在分布式服务中常常被用作缓存。除此之外还可以利用其特点做许多有趣的应用，所以我们不仅需要会用，更需要理解其工作机制。

Redis 的具体介绍在官方网站和维基百科都有，这里我们只要记住几个关键词既可：开源、C 语言、网络交互、基于内存、可持久化、键值对、数据库。作者是 Salvatore Sanfilippo，他的博客和 github 主页都放到文末的参考链接里，有兴趣的同学可以去看看。
根据 Redis 主页上的介绍，许多公司都在使用 Redis，比较著名的有 Twitter GitHub Weibo Pinterest Snap……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2645" class="wp-zan" onclick="wpzan(2645, 0)" href="javascript:;"><span>2</span></a></div></li>
            <li><div class="postview">207</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2645.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2642.html" rel="bookmark" title="HA 高可用软件系统保养指南"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/731bf999022c5d69dbd7d7202eda6582.jpg?imageView/1/w/320/h/200/q/100" alt="HA 高可用软件系统保养指南" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2642.html" rel="bookmark" title="HA 高可用软件系统保养指南">
                HA 高可用软件系统保养指南            </a>
        </h2>
        <div class="post-content">
            又过了一年 618，六月是公司一年一度的大促月，一般提前一个月各系统就会减少需求和功能的开发，转而更多去关注系统可用性、稳定性和管控……        </div>
    </div>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2640.html" rel="bookmark" title="解谜谷歌DevOps：什么特质可以打造世界级可靠系统？">
                解谜谷歌DevOps：什么特质可以打造世界级可靠系统？            </a>
        </h2>
        <div class="post-content">
            本文由 Gene Kim 根据对 Randy Shoup 的采访整理，深入讨论和讲解谷歌 DevOps 的提升之道，下面一起深入了解。本文系 OneAPM 联合高效运维编译整理。
Dr. Spear的模型有如下四大能力：

能力1：在问题发生时马上就能发现；
能力2：一旦发现问题立刻集群式解决（Swarming），并将此记录下来储备成新知识；
能力3：在整个公司范围内传播新知；
能力4：以开发为主导。

这也是采访 Randy Shoup 的基础，此次采访还揭示了一些在谷歌与 eBay 中未曾广泛讨论过的实践案例。
（笔者从 Randy Shoup 那里学到了太多东西，难以言喻。如果想了解更……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2640" class="wp-zan" onclick="wpzan(2640, 0)" href="javascript:;"><span>1</span></a></div></li>
            <li><div class="postview">124</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2640.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2607.html" rel="bookmark" title="ECMAScript 6 简明教程">
                ECMAScript 6 简明教程            </a>
        </h2>
        <div class="post-content">
            ECMAScript 6 目前基本成为业界标准，它的普及速度比 ES5 要快很多，主要原因是现代浏览器对 ES6 的支持相当迅速，尤其是 Chrome 和 Firefox 浏览器，已经支持 ES6 中绝大多数的特性。
本文译自 Github 上的一篇文章，目的是对还不太熟悉 ES6 语法的同学做一个简单的扫盲。
1. let、const 和 block 作用域
let 允许创建块级作用域，ES6 推荐在函数中使用 let 定义变量，而非 var：







		
		
			
var a = 2;
{
  let a = 3;
  console.log(a); // 3
}
console.log(a); // 2
			
				
					
				
					123456
				
		……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2607" class="wp-zan" onclick="wpzan(2607, 0)" href="javascript:;"><span>0</span></a></div></li>
            <li><div class="postview">96</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2607.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2582.html" rel="bookmark" title="Elasticsearch 架构以及源码概览"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/elasticsearch-rest.jpg?imageView/1/w/320/h/200/q/100" alt="Elasticsearch 架构以及源码概览" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2582.html" rel="bookmark" title="Elasticsearch 架构以及源码概览">
                Elasticsearch 架构以及源码概览            </a>
        </h2>
        <div class="post-content">
            Elasticsearch 是最近两年异军突起的一个兼有搜索引擎和NoSQL数据库功能的开源系统，基于Java/Lucene构建。最近研究了一下，感觉 Elastic……        </div>
    </div>
    </li>
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2572.html" rel="bookmark" title="设计高并发下的读服务？一个电商老兵的10条经验"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/concurrent.jpg?imageView/1/w/320/h/200/q/100" alt="设计高并发下的读服务？一个电商老兵的10条经验" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2572.html" rel="bookmark" title="设计高并发下的读服务？一个电商老兵的10条经验">
                设计高并发下的读服务？一个电商老兵的10条经验            </a>
        </h2>
        <div class="post-content">
            本文作者是一个一线的电商老兵，任职于京东商城。在本文中，他将会分享他在构建以读为主的系统时总结的经验和教训，内容包括使用HTTP协议……        </div>
    </div>
    </li>
                                            
<li class="post post-width-thumbnail">
                <div class="post-thumbnail">
                <div class="overlay"><a href="http://www.code123.cc/2561.html" rel="bookmark" title="“推荐系统”精品资料合集"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/themes/Mirana/static/images/view.png" alt="code123" /></a></div>
                <img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/06/recsys-01.jpeg?imageView/1/w/320/h/200/q/100" alt="“推荐系统”精品资料合集" width="320" height="200" />
            </div>
            <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2561.html" rel="bookmark" title="“推荐系统”精品资料合集">
                “推荐系统”精品资料合集            </a>
        </h2>
        <div class="post-content">
            推荐系统的搭建是个复杂工程，涉及到实时计算、离线计算，以及各种数据采集、流转等，对自建推荐系统来说，更是很有困难。云栖社区将在6……        </div>
    </div>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2559.html" rel="bookmark" title="Ubuntu安装最新版nginx并设置开机启动">
                Ubuntu安装最新版nginx并设置开机启动            </a>
        </h2>
        <div class="post-content">
            一.ubuntu下载安装最新版nginx
下载与安装：

		
		
			
wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf  nginx-1.8.1.tar.gz
cd nginx-1.8.1/
./configure --prefix=/usr/local/nginx
sudo make
sudo make install
			
				
					
				
					123456
				
						wget http://nginx.org/download/nginx-1.8.1.tar.gztar -zxvf&nbsp;&nbsp;nginx-1.8.1.tar.gzcd nginx-1.8.1/./configure --prefix=/usr/local/nginxsudo makesudo make install
					
				
			
		

&nbsp;
二.ubuntu设置nginx开机启……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2559" class="wp-zan" onclick="wpzan(2559, 0)" href="javascript:;"><span>3</span></a></div></li>
            <li><div class="postview">192</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2559.html#respond">0</a></div></li>
        </ul>
    </li>
                                            
<li class="post">
        <div class="post-body">
        <h2 class="post-title">
            <a href="http://www.code123.cc/2557.html" rel="bookmark" title="希望大家早点知道的Vim技巧">
                希望大家早点知道的Vim技巧            </a>
        </h2>
        <div class="post-content">
            从2009年开始Vim一直是我主要（并且是唯一的）文本编辑器。这几年，我发现了许多希望当初能早点知道的Vim技巧，因为他们显著改善了我的文本编辑效率。在这片博文中，我想和你们分享最重要的几点。

“不要使用方向键，使用h/j/k/l替代！”通常是给Vim新手的第一条建议。很长一段时间我忽略了它因为这似乎对我有些荒唐。我到底为什么需要那么做？终于有一天我决定尝试一番。从那以后，再也没有回过头。我用了许多天来习惯，当我习惯后，我惊讶于我所失去的。h/j/k/l键在本列位，你不必过多移动你的手。这不仅帮助我移动得更快，而且让我的……        </div>
    </div>
            <ul class="postmeta clearfix">
            <li><div class="postzan"><a id="wp-zan-2557" class="wp-zan" onclick="wpzan(2557, 0)" href="javascript:;"><span>2</span></a></div></li>
            <li><div class="postview">365</div></li>
            <li><div class="postcomm"><a href="http://www.code123.cc/2557.html#respond">0</a></div></li>
        </ul>
    </li>
                                    </ul>
                 <!--div><center>
                    <a href="http://my.yizhihongxing.com/aff.php?aff=494" target="_blank"><img src="http://7xlqnq.com1.z0.glb.clouddn.com/wp-content/uploads/2016/07/vpn.png"></a>
                </center></div></br-->
                <nav class="pagenav clearfix">
                    <span class='page-numbers current'>1</span><a class='page-numbers' href='http://www.code123.cc/page/2' title='第2页'>2</a><a class='page-numbers' href='http://www.code123.cc/page/3' title='第3页'>3</a><a class='page-numbers' href='http://www.code123.cc/page/4' title='第4页'>4</a><span class="page-numbers">...</span><a class='page-numbers' href='http://www.code123.cc/page/39' title='第39页'>39</a><span class='right'><a class='page-numbers page-numbers-next' href='http://www.code123.cc/page/2' title='下一页'>下一页</a></span>                </nav>
            </div>
        </div>
    </div>

<footer id="footer">
	<div class="sns">
		<a href="http://weibo.com/u/5603150440" target="_blank" rel="nofollow" class="weibo"><span>新浪微博</span></a><a href="http://www.zhihu.com/people/code123" target="_blank" rel="nofollow" class="zhihu"><span>知乎</span></a><a href="http://www.code123.cc/feed" target="_blank" rel="nofollow" class="rss"><span>订阅我</span></a>	</div>
	<div class="copyright">Copyright &copy; 2015 <a href="/">Code123</a> All Rights Reserved <a href="http://www.code123.cc/contact" rel="nofollow">Contact</a></div>
    <div class="statistics-div">
        <script type="text/javascript">var cnzz_protocol = (("https:" == document.location.protocol) ? " https://" : " http://");document.write(unescape("%3Cspan id='cnzz_stat_icon_1253876422'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "s95.cnzz.com/z_stat.php%3Fid%3D1253876422%26show%3Dpic' type='text/javascript'%3E%3C/script%3E"));</script>
    </div>
</footer>

</body>
</html>

<!-- Dynamic page generated in 2.110 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2017-03-30 08:19:11 -->

<!-- Compression = gzip -->